package com.java.singletonpattern;

/**
 * @author luzhikun
 * @date 2020/12/9-22:03
 */
public class ZongJie {
    public static void main(String[] args) {
        /**
         * 单例设计模式：就是采取一定的保护措施，使在整个软件系统中，这个类只能创建一次对象实例。
         * 如何实现？
         * 饿汉式  vs  懒汉式
         * 饿汉式：一开始就创建好了对象  好处：天然就是一个线程安全的
         *                              坏处：加载时间过长
         * 懒汉式：什么时候用什么时候创建  好处：延迟对象创建
         *                              坏处：目前写的线程不安全 ----》多线程时在修改
         *
         *
         * 饿汉式和懒汉式的异同点区别  ：
         *
         * 相同点 ： ① 都先建造一个私有化的构造器  因为需要让类不能实例化对象
         *          ② 私有化并且静态对象
         *          ③ 创建一个public 静态方法  返回这个对象  ；
         * 不同点： ①饿汉式是直接创建一个私有对象  然后提供公有的方法返回这个对象
         *          而懒汉式先给这个对象赋值为null 然后再公共方法内判断这个对象是否为null
         *          如果是就给这个对象名创建一个对象  如果不是就可以直接返回这个对象
         * 测试方法里 ： 因为是静态的方法  所以要用类来调用 单例设计模式 中的方法  并且赋给这个类的对象
         *              无论创建多少个对象  他们的地址值其实都一样。
         *
         * */
    }
}
